From: Keir Fraser Date: Tue, 22 Apr 2008 10:44:56 +0000 (+0100) Subject: x86_emulate: Disable writeback if BSF/BSR are passed zero input. X-Git-Tag: archive/raspbian/4.8.0-1+rpi1~1^2~14215^2~146 X-Git-Url: https://dgit.raspbian.org/%22http:/www.example.com/cgi/%22https:/%22bookmarks://%22/%22http:/www.example.com/cgi/%22https:/%22bookmarks:/%22?a=commitdiff_plain;h=63f197e31d1f313613f5342fd566324e1fee14fc;p=xen.git x86_emulate: Disable writeback if BSF/BSR are passed zero input. Signed-off-by: Keir Fraser --- diff --git a/xen/arch/x86/x86_emulate/x86_emulate.c b/xen/arch/x86/x86_emulate/x86_emulate.c index 2b7ddeffbb..8d8db35820 100644 --- a/xen/arch/x86/x86_emulate/x86_emulate.c +++ b/xen/arch/x86/x86_emulate/x86_emulate.c @@ -3134,7 +3134,11 @@ x86_emulate( : "=r" (dst.val), "=q" (zf) : "r" (src.val), "1" (0) ); _regs.eflags &= ~EFLG_ZF; - _regs.eflags |= zf ? EFLG_ZF : 0; + if ( zf ) + { + _regs.eflags |= EFLG_ZF; + dst.type = OP_NONE; + } break; } @@ -3144,7 +3148,11 @@ x86_emulate( : "=r" (dst.val), "=q" (zf) : "r" (src.val), "1" (0) ); _regs.eflags &= ~EFLG_ZF; - _regs.eflags |= zf ? EFLG_ZF : 0; + if ( zf ) + { + _regs.eflags |= EFLG_ZF; + dst.type = OP_NONE; + } break; }